Determining Income Replacement Rates

ABSTRACT

A computer-implemented method, including executing a plurality of simulations on a retirement account in a retirement plan to produce a plurality of potential retirement account balances at a retirement age and associated confidence levels specifying a predicted level of accuracy of corresponding account balances; selecting, from the range, a particular potential account balance that has a confidence level that exceeds a confidence level threshold; and calculating, by one or more processing devices, a constant periodic withdrawal amount of funds from the retirement account.

CLAIM OF PRIORITY

This application claims priority under 35 U.S.C. §119(e) to provisionalU.S. Patent Application 61/873,236, filed on Sep. 3, 2013, the entirecontents of which are hereby incorporated by reference.

BACKGROUND

An income replacement rate is a ratio of retirement income (i.e.,after-tax annual income in retirement) to pre-retirement income (i.e.,after-tax income in the year prior to retirement). For example, anincome replacement rate expresses retirement income as a percentage ofpre-retirement income.

Various types of retirement accounts are known. For example, populartypes of retirement accounts include 401(k) accounts, where the term401(k) refers to Title 26—Internal Revenue Code section 401, paragraph(k). Similarly, as discussed herein other numeric references to types ofretirement accounts generally will refer to the IRS code. In otherjurisdictions, other comparable types of accounts may exist.

SUMMARY

In an implementation, a computer-implemented method includes executing aplurality of simulations on a retirement account in a retirement plan toproduce a plurality of potential retirement account balances at aretirement age and associated confidence levels specifying a predictedlevel of accuracy of corresponding account balances; selecting, from therange, a particular potential account balance that has a confidencelevel that exceeds a confidence level threshold; and calculating, by oneor more processing devices, a constant periodic withdrawal amount offunds from the retirement account. A system of one or more computers canbe configured to perform particular operations or actions by virtue ofhaving software, firmware, hardware, or a combination of them installedon the system that in operation causes or cause the system to performthe actions. One or more computer programs can be configured to performparticular operations or actions by virtue of including instructionsthat, when executed by data processing apparatus, cause the apparatus toperform the actions.

In some implementations, the constant periodic withdrawal amount is aconstant withdrawal amount from the retirement plan starting in a yearafter retirement such that the retirement account is depleted when theparticipant reaches an expected life expectancy. The actions includereceiving information indicative of an amount of social securitypayments the participant is expected to receive annually afterretirement; computing an annual retirement income by summing theconstant withdrawal amount and the annual amount of social securitypayments; and computing, based on the annual retirement income and anafter-tax income in a year before retirement of the participant, anincome replacement rate for a participant, with the income replacementrate being a measure of an amount of after-tax income that a participantreceived annually during retirement divided by the after-tax income in ayear before retirement of the participant. The actions includedetermining, by the one or more processing devices, an amount of theincome replacement rate that is attributable to a defined contribution,with the defined contribution being based on a ratio of the constantwithdrawal amount and the after-tax income in the year before retirementof the participant; and determining, by the one or more processingdevices, an amount of the income replacement rate that is attributableto the annual amount of social security payment.

The actions include aggregating, for participants in a retirement plan,income replacement rates for the participants; and generating avisualization of average income replacement rates for the participants,with a portion of the visualization specifying an amount of the averageincome replacement rate that is attributable to defined contributions ofthe participants in the plan, and with another portion of thevisualization specifying an amount of the average income replacementrate that is attributable to social security payments of theparticipants in the plan. The actions include aggregating, forparticipants in a retirement plan, income replacement rates for theparticipants; and generating visualizations of average incomereplacement rates for different values of a particular participantattribute, with the particular participant attribute comprising one ormore of participants' elective deferral rate, participants' tenure at anemployer, participants' annual income, participants' account balance ata predefined time, and participants' age of starting to contribute toretirement plans, with the visualizations each comprising a definedcontribution component specifying an amount of the average incomereplacement rate that is attributable to defined contributions of theparticipants in the plan, and a social security component specifying anamount of the average income replacement rate that is attributable tosocial security payments of the participants in the plan; and a genderof the participant.

In some implementations, the simulations are Monte Carlo simulations.The actions include accessing information indicative of an expectedretirement age of the participant in the retirement plan, informationindicative of an annual income of the participant, informationindicative of an amount of the employer contribution to the retirementaccount of the participant, information indicative of a contribution ofthe participant to the retirement account of the participant, andinformation indicative of life expectancy of the participant; andaccessing information indicative of different market conditions fortypes of assets in the retirement account. The actions include accessinginformation indicative of historical performance of types of assets inthe retirement account; generating, from the information indicative ofthe historical performance, different market conditions, with a firstone of the different market conditions being that the market performslower than historical averages for a particular type of asset, and witha second one of the different market conditions being that the marketholds at a historical average for the particular type of asset in theretirement account.

The actions include determining asset allocations for types of assets inthe retirement account, with the different market conditions beingmarket conditions for the types of assets included in the retirementaccount and with the simulations being weighted in accordance with theasset allocations of the retirement account. The actions includeapplying a plurality of simulations to information indicative of thedifferent market conditions for types of assets in a retirement accountof a participant, information indicative of an expected retirement ageof the participant, information indicative of an annual income of theparticipant, information indicative of the amount of an employercontribution to the retirement account, and the information indicativeof a contribution of the participant to the retirement account.

In another implementation, a computer-implemented method for designingan investment plan, the method comprises: receiving a request togenerate an estimate of a hypothetical income replacement rate for ahypothetical participant in a hypothetical retirement plan, with therequest including a selected starting age, a selected retirement age, aselected starting salary, a selected starting deferral rate, a selectedemployer contribution rate, and a selected annual deferral increase inthe starting deferral rate; applying a plurality of simulations toinformation indicative of the different market conditions for types ofassets in hypothetical retirement plan, information indicative of theselected retirement age of the participant, information indicative ofthe selected starting salary, information indicative of the selectedstarting deferral rate, and information indicative of the selectedemployer contribution rate; and generating, based on applying, a rangeof potential account balances for the hypothetical retirement accountwhen the hypothetical participant reaches the selected retirement age,with each of the potential account balances in the range beingassociated with a confidence level specifying a predicted level ofaccuracy of the potential account balance; selecting, from the range, aparticular potential account balance with a confidence level thatexceeds a confidence level threshold; calculating, by one or moreprocessing devices and based on an expected life expectancy of thehypothetical participant, a constant withdrawal amount that specifies aconstant amount of funds the hypothetical participant can withdraw fromthe hypothetical retirement account each year after retirement such thatthe hypothetical retirement account is depleted when the participantreaches the expected life expectancy; receiving information indicativeof an amount of social security payments the hypothetical participant isexpected to receive annually after retirement; computing an annualretirement income by summing the constant withdrawal amount and theannual amount of social security payments; and computing, based on theannual retirement income and an after-tax income in a year beforeretirement of the hypothetical participant, an hypothetical incomereplacement rate for a participant, with the hypothetical incomereplacement rate being a measure of on an amount of after-tax incomethat a participant received annually during retirement divided by theafter-tax income in a year before retirement of the hypotheticalparticipant. Other embodiments of this aspect include correspondingcomputer systems, apparatus, and computer programs recorded on one ormore computer storage devices, each configured to perform the actions ofthe methods.

In some implementations, the hypothetical income replacement rate is afirst hypothetical income replacement rate, and wherein the methodfurther comprises: computing a second hypothetical income replacementrate based on another selected starting deferral rate, another selectedemployer contribution rate, and another selected annual increase; andgenerating a comparison of the first hypothetical income replacement tothe second hypothetical income replacement.

In yet other implementations, a computer-implemented method fordesigning an investment plan includes generating a simulation of a firstincome replacement rate for a participant in the investment plan, withthe simulated first income replacement rate being based on a firstuser-specified deferral rate and a first user-specified employercontribution rate; generating a simulation of a second incomereplacement rate for the participant in the investment plan, with thesecond income replacement rate being based on a second user-specifieddeferral rate and a second user-specified employer contribution rate;determining that at least one of the first income replacement rate andthe second income replacement rate is an unacceptable income replacementrate; and updating, based on determining, one or more attributes of theplan for the participant, with an attribute comprising one or more of adeferral rate and an employer contribution rate. Other embodiments ofthis aspect include corresponding computer systems, apparatus, andcomputer programs recorded on one or more computer storage devices, eachconfigured to perform the actions of the methods.

All or part of the foregoing may be implemented as a computer programproduct including instructions that are stored on one or morenon-transitory machine-readable storage media and/or one or morecomputer-readable hardware storage devices that are a hard drive, arandom access memory storage device, such as a dynamic random accessmemory, machine-readable hardware storage devices, and other types ofnon-transitory machine-readable storage devices, and that are executableon one or more processing devices. All or part of the foregoing may beimplemented as an apparatus, method, or electronic system that mayinclude one or more processing devices and memory to store executableinstructions to implement the stated functions.

The details of one or more embodiments are set forth in the accompanyingdrawings and the description below. Other features, objects, andadvantages of the techniques described herein will be apparent from thedescription and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram of a system for determining an income replacementrate.

FIG. 2 is a block diagram of components of a system for determining anincome replacement rate.

FIGS. 3-4 are diagrams of graphical user interfaces that are generatedby the system for determining an income replacement rate.

FIG. 5-6 are flow charts of processes for determining an incomereplacement rate.

DETAILED DESCRIPTION

Referring to FIG. 1, system 100 includes server 106 for computing incomereplacement rates for retirement plans, client device 102, and datarepository 108. To determine an income replacement rate for a particularretirement plan or product, server 106 executes simulation engine 116that applies one or more simulations to financial account information122 and financial modeling information 124. Financial accountinformation 122 includes information about one or more financialaccounts of various users of system 100, including, e.g., types offinancial accounts (e.g., savings accounts, checking accounts,retirement accounts, brokerage accounts, etc.) and balances in thevarious types of accounts. Financial account information 122 alsoincludes salary information for a particular participant of a retirementplan and a salary growth rate (e.g., 1.5%) to enable computations offuture, expected salaries for a participant.

Financial account information 122 also includes information indicativeof amounts of contributions to retirement plans. For example, thefinancial account information 122 also can include amounts (e.g., rates)of employee contributions to a retirement plan. An employee contributionis an amount an employee contributes to a retirement plan (e.g., a401(k)). In a variation, server 106 computes the amount of an employeecontribution using a deferral rate (pre and post-tax), e.g., a rate fordeferring portions of salary to a retirement account. Using aparticipant's annual salary, an amount of funds that is diverted to ahealth savings account and the deferral rate, server 106 determines acontribution dollar amount, e.g., based on the following equation:

Contribution amount=(Annual salary−HSA contributions)×deferral rate

In a variation, data repository 108 stores information indicative of acontribution dollar amount, rather than a deferral rate. In thisvariation, server 106 determines the deferral rate based on the totalcontribution dollar amount and the salary amount.

Financial account information 122 also includes information indicativeof employer contributions, e.g., an amount an employer contributes to aretirement plan. Employer contributions are based on a predefined numberof months of total employer contributions (e.g., the last twelve monthsof match and profit sharing). Based on an amount an employer contributesto a retirement plan and the salary of the participant, server 106calculates the employer contribution percentage for a participant.

Financial account information 122 also includes other informationindicative of other retirement plans, e.g., conventional employersponsored pension plans, if any, and prior 401k, 403b, etc. plans, ifany.

Financial modeling information 124 includes information specifying aretirement age and information specifying a life expectancy. Thefinancial modeling information 124 is used by simulation engine 116 toperform simulation of balances in retirement accounts under variousscenarios. Simulation engine 116 uses a predefined or a user selectedretirement age (e.g., a retirement age of sixty-seven). Simulationengine 116 is programmed with conditions specifying when the lastcontribution is made and when the first withdrawal is made. For example,one set of conditions is that a participant (in a retirement plan) makesthe last contribution just prior to reaching the retirement age andmakes a first withdrawal from a retirement account after reaching theretirement age.

The simulation executed by simulation engine 116 also uses anindividual's life expectancy in performing the calculations. Simulationengine 116 uses a predefined or a user selected life expectancy valueand simulation engine 116 is programmed to assume that the participantmakes a final withdrawal during the final year of life expectancy.

To determine the income replacement rate for a particular plan (acrossplan participants), server 106 determines the income replacement ratefor each participant in the plan. As previously described, the incomereplacement rate is a ratio of retirement income (i.e., after-tax annualincome in retirement) to pre-retirement income. To determine an amountof retirement income, server 106 executes simulation engine 116 thatexecutes a series of algorithms and simulations (e.g., Monte Carlosimulations) to determine an amount of retirement income.

Simulation engine 116 executes a plurality of simulation models usingfinancial account information 122 and financial modeling information124, including, e.g., models indicative of different market conditionsfor types of assets in a retirement account of a participant,information indicative of an expected retirement age of the participant,information indicative of an annual income of the participant,information indicative of the amount of an employer contribution to theretirement account, and the information indicative of a contribution ofthe participant to the retirement account. Based on the simulations,simulation engine 116 generates a range of potential account balancesfor the retirement account when the participant reaches an expectedretirement age, with each of the potential account balances in the rangebeing associated with a confidence level specifying a predicted level ofaccuracy of the potential account balance.

Server 106 selects, from the range, a particular potential accountbalance with a confidence level that exceeds a confidence levelthreshold. Based on the expected life expectancy of the participant,server 106 calculates a constant withdrawal amount that specifies aconstant amount of funds the participant can withdraw from theretirement account each year after retirement such that the particularpotential account balance of the retirement account is depleted at aparticular age and/or when the participant reaches the expected lifeexpectancy.

In particular, simulation engine 116 uses a Monte Carlo simulation-basedapproach to estimate potential growth of account balances throughretirement, applying market performance assumptions. A Monte Carlosimulation is a mathematical method used to estimate the likelihood of aparticular outcome based on market performance historical analysis.Using the Monte Carlo simulation, simulation engine 116 analyzesexpected fund performance based on historical market data thatincorporates a risk premium approach to project a range of potentialoutcomes for various hypothetical retirement income portfolios underdifferent market conditions. The Monte Carlo simulations account forchange in market conditions. The Monte Carlo simulations are designed toreflect this historical market volatility.

Prior to implementation of the Monte Carlo simulations, simulationengine 116 performs historical performance analysis. Simulation engine116 identifies an asset allocation (e.g., current asset mix) in aretirement plan for a particular participant. For the type of retirementplan, simulation engine 116 accesses, from data repository 108,information specifying a target asset mix. For modeling purposes, a userof simulation 116 specifies whether to use the target asset mix or thecurrent asset mix in performing the simulations.

A retirement account can include various types of asset classes,including, e.g., stocks, long term debt instructions such as bonds, andshort-term debt instruments such as treasury bills and notes or thelike, and so forth. Simulation engine 116 accesses, in data repository108, information indicative of historical correlations and volatilitiesof the various types of asset classes within the particular account byrunning hypothetical financial market return scenarios or simulations.Using the historical correlations and volatilities, simulation engine116 projects the performance of the asset mix in the retirement plan togenerate a range of potential returns. The expected returns are based onthe risk premium approach, as described in more detail below. Simulationengine 116 also determines confidence levels (e.g., a confidence levelof 90%, 75% and so forth) for an expected (i.e., potential) return bydetermining how a particular asset mix may have performed in a certainpercentage of the simulated market scenarios.

A confidence level of 90% is indicative of very conservative marketperformance and indicates that in 90% of the historical market scenariosrun, a target asset mix similar to the current asset mix of selectedaccount or of another target asset mix that the user selected formodeling purposes performed at least as well as a particular result(e.g., a predetermine amount of growth). A confidence level of 10%indicates that in 10% of the historical market scenarios run, a targetasset mix similar to the current asset mix of the selected account or ofanother target asset mix that the used selected, failed to reach theresults of particular result. Examples of various confidence levels areshown in Table 1, below.

TABLE 1 Performance Performance Assumptions Assumptions ConfidenceMarket Conditions Fail Meet or Exceed Level If markets perform 1 out of9 out of 90% significantly lower than 10 times 10 times historicalaverages If market averages continue 1 out of 1 out of 50% 2 times 2times

As shown in the above Table 1, the table lists confidence levels for twodifferent market conditions. For the first condition “If markets performsignificantly lower than historical averages” the simulation modelsusing the performance assumptions provided for those models fail 1 outof 10 times or in other words meets or exceeds 9 out of 10 times, givingthat set of assumptions a 90% confidence level. Conversely, for thecondition “If market averages continue” the simulation models using theperformance assumptions provided for those models fail 1 out of 2 timesor in other words meets or exceeds 1 out of 2 times, giving that set ofassumptions a 50% confidence level.

A target asset mix's performance figures are based on the weightedaverage of annual return figures for various benchmarks for an assetclass represented in the target asset mix. Historical returns andvolatility of the stock, bond, and short-term asset classes are based onthe historical performance data from 1926 through the most recentyear-end data available from an external source, e.g., Morningstar.Stocks (domestic and foreign), bonds, and short-term assets arerepresented by the S&P 500®, U.S. intermediate-term government bonds,and 30-day U.S. Treasury bills, respectively. Foreign equities (prior to1970) are represented by various foreign indices, e.g., the MorganStanley Capital International Europe, Australasia, Far East Index forthe period from 1970 to the last calendar year. Foreign equities priorto 1970 are represented by the S&P 500® Index.

Simulation engine 116 generates average annual returns that arehypothetical, and, if achieved annually, would produce the samecumulative total return as if performance had been constant over theentire period. Volatility of the stock (domestic and foreign), bond, andshort-term asset classes is based on the historical annual data from1926 through the most recent year-end data available from IbbotsonAssociates, Inc. Stocks (domestic and foreign), bonds, and short-termare represented by the S&P 500® Index, U.S. intermediate-term governmentbonds, and 30-day U.S. Treasury bills, respectively.

Following, the historical analysis, simulation engine 116 performsvarious types of historical performance simulations to determine theprobability that a portfolio may experience a certain minimum level ofperformance given market volatility. One type of simulation performed isa Monte Carlo Simulation. Monte Carlo methods (or Monte Carloexperiments) are a broad class of computational algorithms that rely onrepeated random sampling to obtain numerical results; typicallysimulations are performed many times over in order to obtain thedistribution of an unknown probabilistic entity.

In implementing a Monte Carlo simulation, simulation engine 116 randomlygenerate a series of hundreds of returns for a given scenario (e.g., aparticular market condition). These various market conditions—in theaggregate provide a probability that a certain amount (or greater) ofassets/income occurs at that market condition. In order to implement aMonte Carlo simulation, simulation engine 116 is programmed with thevarious conditions. Simulation engine 116 selects from a specificstatistical distribution random variables, representing asset classreturns. The time increment used in the Monte Carlo simulations is apredefined length of time (e.g., one year). Simulation engine 116generates annual random returns to simulate the mean, standarddeviation, distribution, and correlated behavior of observed historicalasset class.

In one implementation, the Simulation engine 116 is programmed such thatannual returns assume the reinvestment of interest income and dividends,no transaction costs, no management or servicing fees (except for avariable annuity fee) and the rebalancing of the portfolio every year.Other simulations that take into considering costs for example could beused. This calculation is independent of and does not include annualreturns of individual securities held by a participant. Rather,simulation engine 116 performs the analysis on asset classes.

A Monte Carlo simulation of capital market returns takes into accountexpected returns from each asset class (e.g., stocks, bonds, andshort-term investments), their volatility, correlations between them,and other factors, based on historical statistics. Simulation engine 116generates random rates of return by sampling values from a probabilitydistribution such as a bell curve (e.g., “lognormal” distribution).Simulation engine 116 also quantifies various relationships betweenasset classes and financial products and includes these quantificationsin the simulation. One relationship is that returns from stock assetclasses (such as Canadian, U.S., or international equities) arehistorically higher than returns from lower-risk (such as fixed income)or risk-free investments (like cash or GICs). Another relationship isthat higher stock returns also have greater risk associated with a widerrange of outcomes—from complete loss of capital to appreciation manytimes over the initial purchase price and also experience greatervolatility.

Simulation engine 116 also performs asset allocation to spreadinvestments across various asset classes. While asset allocation doesnot ensure a profit or guarantee against a loss, dividing holdings amongthe asset classes of stock, bond, and short-term investments, lowers therisk associated with having money in one type of investment.

Simulation engine 116 selects an asset class mix that is similar to thecurrent asset mix of a selected individual's account. Simulation engine116 determines a current asset mix based on the types of holdings withinthat selected account. Simulation engine 116 categorizes a holding byasset class, e.g., stocks, bonds, or short-term investments. Simulationengine 116 retrieves, from data repository 108, holdings data used toclassify mutual funds and other financial assets. This holding data isprovided by an external, third-party source. Holdings data for publiclyavailable mutual funds is obtained monthly from an independentthird-party vendor (e.g., Morningstar, Inc.) In some cases (e.g., newerfunds), the third-party vendor may not have holdings information andtherefore holding in such funds are classified as “unknown.” In avariation, simulation engine 116 does not recognize the holdings withina mutual fund. In this variation, simulation engine 116 performsanalysis only on the recognized holding of the mutual fund. Theunderlying holdings may not be fully classified, as the unrecognizedholdings will not be categorized. The unrecognized holdings areclassified as “unknown.”

For proprietary mutual funds and other pooled investment options uniqueto certain retirement plans (e.g., commingled pools or separateaccounts), simulation engine 116 relies on underlying holdings provided(e.g., quarterly) by various third parties, e.g., affiliates, plansponsors, and external money managers. For assets that are classified as“unknown” or “other,” simulation engine 116 normalizes these assetsreflect current allocation to stocks, bonds, and short-term categories.

For purposes of illustration, a hypothetical asset allocation scenariois presented in Table 2 below:

TABLE 2 Stocks 40% Bonds 20% Short Term 15% Other 10% Unknown 15%

As shown in the above Table 2, the asset allocation of a particularretirement plan is made-up of forty percent stocks, twenty percentbonds, fifteen percent short term investments, ten percent of othertypes of investment and fifteen percent unknown types of investments(e.g., investments that simulation engine 116) is unable to classify.Simulation engine 116 combines the percentages of “other” and “unknown”asset types to calculate historical market performance figures.Simulation engine 116 takes the percentage of each known classification(stocks, bonds, and short term) and divides it by the total percentageof stocks, bonds, and short term. This calculation results in anormalized mix percentage adding up to 100%, as shown in the below Table3:

TABLE 3 Other + Unknown = 25% Stocks + Bonds + Short Term = 75% {=100% −total for Other and Unknown (25%)} Stocks % = (40%)/75% = 53% Bonds % =(20%)/75% = 27% Short Term = (15%)/75% = 20%

As shown in the above Table 3, simulation engine 116 using theallocations in Table 2 calculates an effective stock allocation offifty-three percent, a bond allocation of twenty-seven percent and ashort term allocation of twenty percent. In a variation, simulationengine 116 calculates the short-term allocation based on the followingequation: 100%−(stock allocation %+bond allocation %). The determinedallocations, e.g., as shown in Table 3, are used as the current assetmix for a particular retirement plan.

Simulation engine 116 also performs look-through analysis, which is thecategorization of a portfolio based on the underlying value and type ofassets held in an underlying investment (based on data from thethird-party sources). Rather than classifying investments as stocks,bonds, or short-term investments, simulation engine 116 analyzes theunderlying holdings of the investments to determine a more accurateexposure to asset classes.

In addition to generating predictions of market performance of aretirement plan based on a current asset mix, simulation engine 116 alsopredicts growth of a retirement plan based on account contributions,e.g., employer contributions, employee contributions and so forth.Simulation engine 116 generates predictions of potential retirementaccount balances by executing simulations in which the contributions areused to purchase additional assets in accordance with the current assetmix and the performance of the fund is in accordance with the historicalperformance.

In generating estimates of amounts of contributions that are made to aplan, simulation engine 116 accesses from data repository 108contribution limit handler information that is indicative of a setdollar amount contribution limit. Various types of retirement plans(e.g., 401(k), 403(b), 401(a), and 457(b) plans i.e., numeric arereferences to the Internal Revenue Code) have different contributionlimits. Contributions cannot exceed the account's contribution limit, asestablished by the Internal Revenue Code (IRC) and plan rules, ifapplicable. Simulation engine 116 uses annual IRC contribution limits toverify that expected contributions are within the specified limit forthat account. Simulation engine 116 also applies plan limits orcontribution information applicable to the plan, if such information hasbeen supplied by the workplace plan sponsor.

Simulation engine 116 applies IRC annual contribution limitations basedon the type of account. Simulation engine 116 also verifies IRC limitson after-tax employee contributions to employer-sponsored accounts.Simulation engine 116 is programmed with the condition thatcontributions stop at a selected retirement age or when no longerpermitted, whichever occurs earlier.

Simulation engine 116 retrieves from data repository 108 contributionlimits for 401(k), 403(b), 401(a), and 457(b) plans and informationindicative of a current age of a particular participant of the plan. Ifsimulation engine 116 determines that the current age of the participantexceeds a specified age (e.g., fifty years), simulation engine 116executes rules that enables the predicted account balances to includecatch-up contributions allowed under the Economic Growth and Tax ReliefReconciliation Act of 2001 (EGTRRA) for applicable accounts. Simulationengine 116 is programmed with the condition that all contributions,whether made by the participant or the employer, are vested by theparticipant.

Using the amount of contributions to be added to a retirement plan(until the participant reaches retirement age), the current asset mix,and historical performance for the current asset mix, simulation engine116 executes a plurality of simulations on a retirement account in theretirement plan to produce a plurality of potential retirement accountbalances at a retirement age and associated confidence levels specifyinga predicted level of accuracy of corresponding account balances (e.g.,based on Monte Carlo simulations). Simulation engine 116 selects apotential retirement account balance with a confidence level thatexceeds a threshold confidence level. Using the life expectancy of aparticipant in the retirement plan, simulation engine 116 calculates aconstant periodic withdrawal amount of funds from the retirement accountstarting in a year after retirement such that the retirement account isdepleted when the participant reaches the expected life expectancy.Simulation engine 116 and/or server 106 performs the techniquesdescribed herein for determining income replacement rates for multipleretirement accounts, e.g., for all of the participants who are enrolledin a particular plan.

Simulation engine 116 determines the post-retirement income based on theconstant periodic withdrawal amount and other types of retirementincome, including, e.g., social security income and benefits and incomefrom IRAs. Simulation engine 116 generates an estimate of socialsecurity income based on the participant's date of birth, most recentearned income amount, and the retirement age, e.g., based on a table orother calculation provided by the Social Security Administration.Simulation engine 116 adjusts an amount of social security retirementbenefits by a Cost of Living Adjustment (COLA). Simulation engine 116also increases the amount of the social security income by a predefinedinflation amount (e.g., an annual inflation rate), which is retrievedfrom data repository 108 and is periodically updated.

Simulation engine 116 also determines expected tax payments incalculating the post-retirement income. Simulation engine 116 retrievesfrom data repository 108 (or from an external data source) IRSStatistics of Income (SOI) tables. Using the SOI tables, simulationengine 116 determines typical deductions and effective federal tax ratesby income ranges and applies those rates to a participant's income.Simulation engine 116 uses a predetermined tax rate (e.g., five percent)for state and local income tax rates. Simulation engine 116 isprogrammed such that retirement incomes, including but not limited topensions, part-time jobs, or annuities, are taxable (excluding certaintax-deferred and -advantaged accounts).

Using the constant periodic withdrawal amount, social security incomeand state and local tax rates, simulation engine 116 determines anamount of post-tax retirement income in accordance with the equations inTable 4:

TABLE 4 Pre-tax annual retirement income = the constant periodicwithdrawal amount + social security income Post tax annual retirementincome = pre-tax annual retirement income − federal income tax −state/local tax

As shown in Table 4, simulation engine 116 calculates the pre-tax annualretirement income as an aggregate of the constant periodic withdrawalamount and other forms of retirement income, such as, social securityincome. From the pre-tax annual retirement income, simulation engine 116determines an amount of federal and local taxes to be paid on thepre-tax annual retirement income. Simulation engine 116 determines thepost-tax annual retirement income by subtracting the amount of federaland local income taxes from the pre-tax annual retirement income. Usingthe post-tax annual retirement income, simulation engine 116 determinesthe income replacement rate for a particular plan participant bycomputing the ratio of the post-tax annual retirement income to the posttax annual income the year before retirement. Simulation engine 116determines retrieves, from data repository 108, information indicativeof the post-tax annual income the year before retirement. Theinformation indicative of the post-tax annual income the year beforeretirement is stored in data repository 108 as part of a participantprofile. Server 106 determines income replacement rates for a pluralityof the participants in a particular retirement plan.

A user of simulation engine 116 requests to view income replacementrates for the participants of a plan that are filtered by variouscriteria, e.g., based on deferral rates, age, and so forth. The useruses client device 102 to transmits filtering information 112 to server106. Based on contents of filtering information 112, server 106 filtersincome replacement rates based on the criteria specified in filteringinformation 112, as described in more detail below.

Referring to FIG. 2, client device 102 can be any sort of computingdevice capable of taking input from a user and communicating overnetwork 110 server 106 and/or with other client devices. For example,client device 102 can be one or more mobile devices, desktop computers,laptops, cell phones, personal digital assistants (“PDAs”), iPhone,smart phones, iPads, servers, embedded computing systems, and so forth.

Server 106 also includes memory 202, a bus system 204, and a processor206. Memory 202 can include a hard drive and a random access memorystorage device, such as a dynamic random access memory, machine-readablemedia, machine-readable hardware storage devices, or other types ofnon-transitory machine-readable storage devices. Memory 202 storesvarious computer programs, e.g., simulation engine 116. A bus system204, including, for example, a data bus and a motherboard, can be usedto establish and to control data communication between the components ofcommunications processing device 106. Processor 206 may include one ormore microprocessors and/or processing devices. Generally, processor 206may include any appropriate processor and/or logic that is capable ofreceiving and storing data, and of communicating over a network (notshown).

Server 106 can be any of a variety of computing devices capable ofreceiving data, such as a single server, a distributed computing system,a desktop computer, a laptop, a cell phone, a rack-mounted server, cloudcomputing device, and so forth. Server 106 may be a single server or agroup of servers that are at a same location or at different locations.Communications processing device 106 can receive data from clientdevices via input/output (“I/O”) interface 200. I/O interface 200 can beany type of interface capable of receiving data over a network, such asan Ethernet interface, a wireless networking interface, a fiber-opticnetworking interface, a modem, and so forth.

Referring to FIG. 3, server 106 generates graphical user interface 140that displays controls 142, 144, 146, 148, 150, 152, 154,156,158 forfiltering income replacement rates by various criteria. Filter 142allows for filtering income replacement rates based on the incomes ofthe participants in the retirement plan. Filter 144 allows for filteringincome replacements rates based on an auto enrollment status ofparticipants in the retirement plan. Generally, auto enrollment statusspecifies whether an individual (e.g., an employee) is automaticallyenrolled in a retirement plan.

Filter 146 allows for filtering of income replacement rates based onwhether a participant is enrolled in an automatic investment plan (AIP),i.e., an investment program that allows investors to contribute smallamounts of money (e.g., $20 a month) in regular intervals. Filter 148allows for filtering of income replacement rates based on age of theparticipants in the retirement plan. Filter 150 allows for filtering ofincome replacement rates based on account balances (e.g., of theretirement accounts) of the participants in the retirement plan. Filter152 allows for filtering of income replacement rates based on income ofthe participants in the plan. Filter 154 allows for filtering based ontenure status (e.g., whether a participant is a tenured employee) of aparticipant in a plan. Filter 156 enables filtering of incomereplacement rates based on the gender of the participants in the plan.Filter 158 enables filtering of income replacement rates by a deferralrate, e.g., a rate at which a participant defers income to theretirement plan.

Server 106 determines an average income replacement rate (IRR) for theparticipants in a plan in accordance with the formula shown in the belowTable 5:

TABLE 5 IRR_(Average) = (IRR₁ + . . . + IRR_(n))/n

As shown in Table 5 above, server 106 determines an average IRR(IRR_(Average)) for the participants in a particular retirement plan forwhich there are “n” participants. Server 106 determines IRR_(Average) bydetermining a ratio of the summation of the IRR for the n participantsin the retirement plan (i.e., (IRR₁+ . . . +IRRn)) to the number ofparticipants in the retirement plan.

Graphical user interface 140 generates various visual representations,160, 166, and 190, each of are here depicted as bar graphs that can becolor coded to represent retirement sources (in FIG. 3 the bottomportion is social security whereas the top portion is a definedcontribution plan). More specifically, visual representation 160displays a graph of the average income replacement rate (i.e., 63%) forthe retirement plan. Visual representation 160 includes portions 162,164 to specify which portion of the IRR_(Average) is attributable afirst retirement income source (i.e., a defined contribution) and whichportion of the IRR_(Average) is attributable to a second retirementincome source (i.e., social security), respectively. Generally, adefined contribution is a contribution made to a retirement plan (by anemployer, employee or both) on a regular basis.

To determine the break-down of types of income sources and amounts thatcontribute to IRR_(Average), server 106 accesses, from data repository108, profile information for the participants in the particular plan,e.g., as shown in the below Table 6:

TABLE 6 Partici- Annual Social Constant pant Income at Deferral SecurityDefined Periodic ID Retirement Rate Income Contribution Withdrawal 1$65,000 5% $1400/mo $17000/year $5000/mo 2 $110,000 7% $1500/mo$17000/year $6000/mo . . . . . . . . . . . . . . . . . . n $45,000 2%$1100/mo %10000/year $1500/mo

As shown in the above Table 6, the participant profile includesinformation indicative of an annual income at retirement, informationspecifying a deferral rate at which a participant contributes to theretirement plan, an amount of social security income that theparticipant receives, an amount of a defined contribution to aretirement plan, and an amount of the constant periodic withdrawal.

To determine the portion of IRR that is attributable to a particularsource (e.g., defined contribution, social security, and so forth),server 106 determines an amount of retirement income (e.g., for aparticular participant and/or for an entire plan) that then determinesthe amount the particular source contributes to the retirement income.For example, the aggregate retirement income for the participants shownin the above Table 6 is the aggregate of the social security income andthe constant periodic withdrawal amounts, as shown in the below Table 7:

TABLE 7 Annual Aggregate Retirement Income_(Plan) = (Social SecurityIncome₁ + . . . Social Security Income_(n)) + (Constant PeriodicWithdrawal₁ + . . . Constant Periodic Withdrawal_(n))

Using the value of Aggregate Retirement Income_(Plan), server 106determines a portion of the aggregate income replacement rate that isattributable to a particular source, in accordance with the formulashown in the below Table 8:

TABLE 8 Portion of IRR attributable to source = Annual Aggregate Amountfrom Source/Annual Aggregate Retirement Income_(Plan)

As shown in the above Table 8, the portion of the income replacementrate (e.g., an aggregate income replacement rate) that is attributableto a particular source is a ratio of the amount of funds that are fromthe source to the IRR. For example, server 106 determines a portion ofthe average IRR that is attributable to defined contributions of theparticipants in accordance with the formula shown in the below Table 9:

TABLE 9 Portion of IRR attributable to defined contributions = (Definedcontribution₁ + . . . + Defined Contribution_(n))/Annual AggregateRetirement Income_(Plan)

As shown in the above Table 9, the portion of the average IRR that isattributable to defined contributions of the participants in the plan isthe ratio of the aggregate of the amount of defined contributions forthe participants in the plan to the annual aggregate retirement incomefor the plan.

Still referring to FIG. 3, graphical user interface 140 also includesvisual representation 166 that displays income replacement rates bydeferral rate. Visual representation 166 includes statistical bars 168,170, 172, 174, 176, 180, 182, 184, 186 that represent the incomereplacement rates at various deferral rates. The statistical bars 168,170, 172, 174, 176, 180, 182, 184, 186 can be color-coded to representportions of the income replacement rate for a particular deferral ratethat are attributable to various sources (e.g., a defined contributionsource, a social security source, and so forth). Graphical userinterface 140 also includes visual representation 190 that displaysincome replacement rates by income of the participants in the retirementplan.

To filter income replacement rates by various criteria (e.g., bydeferral rate), server 106 determines particular values or ranges ofvalues that represent the criteria (e.g., a deferral rate of 1%, 2%, 3%,4%, 5%, 6%, 7-9% and greater than 10%). For a particular value (or rangeof values), server 106 selects participant profiles that includes valuesthat match the particular criteria value (e.g., a deferral rate of 2%).Server 106 determines income replacement rates for the selectedparticipant profiles.

Referring to FIG. 4, server 106 generates graphical user interface 200that displays a plan design tool to promote designing a retirement planthat satisfies various criteria, including, e.g., a threshold incomereplacement rate. Generally, a threshold income replacement rate is userspecified and/or a system calculated predefined income replacement ratethat satisfies one or more criteria, e.g., an industry standard of anacceptable income replacement rate. In an example, the threshold incomereplacement rate is 85%, which is a benchmark income replacement ratethat the finance industry has determined to be sufficient for anindividual to comfortably retire. Graphical user interface 200 includescontrols 202, 204, 206, 208, 210, 212, 214 for specifying participantattributes to be used in determining the income replacement rate forvarious plan designs. Age control 202 enables a user to specify an ageof a participant. Retirement age control 204 enables a user to specify aretirement age of a participant. Salary control 206 enables a user tospecify a starting salary to be used. Control 208 enables a user toselect a default allocation type, which is the plan investment defaultor an assumed flat rate of return. The user has the choice of twooptions to model investment growth: a plan investments default fund, forexample a target date fund or a conservative option and the model wouldutilize Monte Carlo simulations to project the results, or the usercould input an assumed flat rate of return (3%, 5% etc.) rather thanutilizing an investment default fund to project growth. Control 210allows a user to enter an amount of funds that are contributed to ahealth savings account (HSA). Control 212 allows a user to specify aminimum amount of funds that may be contributed to an HAS. Control 214enables a user to specify an amount of funds that are contributed to anindividual retirement account (IRA).

Graphical user interface 200 includes portions 201, 203, 205 for displayof information indicative of different retirement design plans. For afirst retirement design plan, which is represented by portion 201,controls 222, 224, 226 enable a user to specify a starting deferralrate, an employer contribution amount and an annual increase in one ormore of the deferral rate and the employer contribution amount,respectively. Using the values specified by controls 222, 224, 226 andcontrols 202, 204, 206, 208, 210, 212, 214, simulation engine 116determines what the income replacement rate would be if a participantwith the attributes specified by controls 202, 204, 206, 208, 210, 212,214, 222, 224, 226 participated in a retirement plan of a plan sponsor.In addition to the attributes specified by these controls, simulationengine 116 may also use other criteria, e.g., a fixed rate of return. Indetermining the income replacement rate, simulation engine 116 usesretirement income amounts from multiple retirement income sources,including, a retirement plan, IRAs and social security income sources.

For the first retirement plan represented by portion 201, simulationengine 116 determines a constant periodic withdrawal amount. In makingthis determination, simulation engine 116 generates a prediction of theamount of funds in the retirement plan at the retirement age specifiedby control 204. The amount of funds in the retirement plan at theretirement age is based on the starting salary of the participant,annual increases in that salary, pre-tax contributions to IRAs and HSAs,employee deferral rates to the retirement plan (and yearly increases—ifany), employer contributions to the retirement plan (and yearlyincreases—if any) and growth in savings of the retirement plan (e.g.,due to performance of the underlying funds in the retirement plan), asshown by the formulas in the below Tables 10-14:

TABLE 10 Deferral Salary_(year 30) = Starting Salary − HSA contributions− IRA contributions . . . Deferral Salary_(year n) = Salary_(year n−1) +Annual Increase(Salary_(year n−1)) − HSA contributions − IRAcontributions

As shown in the above Table 10, simulation engine 116 determinesdeferral salaries for the year the participant start participating inthe retirement plan (i.e., year 30) until the participant reachesretirement age (i.e., year 67). Generally, a deferral salary is anamount of pre-tax dollars that is eligible for contribution to aretirement account and is exclusive of HSA contributions and IRAcontributions. Using controls 202 and 204, a user has specified that thestarting age of the participant starting to participate in theretirement account is age 30 and the retirement age is age 67. The userhas also selected controls 206, 210, 214 to specify a starting salary(at age 30), an amount of funds that are contributed to an HSA account,and an amount of funds that are contributed to an IRA.

Using the deferral salaries from when the participant startsparticipating in the retirement age until retirement, simulation engine116 determines contributions amounts, as shown in Table 11 below:

TABLE 11 $\begin{matrix}{{{Contributions}\mspace{14mu} {Amount}_{{year}\mspace{14mu} 30}} = {{{Deferral}\mspace{14mu} {Rate}_{{year}\mspace{14mu} 30}\left( {{Deferral}\mspace{14mu} {Salary}_{{year}\mspace{14mu} 30}} \right)} +}} \\{{Employer}\mspace{14mu} {Contribution}\mspace{14mu} {{Rate}_{{year}\mspace{14mu} 30}\left( {{Deferral}\mspace{14mu} {Salary}_{{year}\mspace{14mu} 30}} \right)}} \\\ldots \\\begin{matrix}{{{Contributions}\mspace{14mu} {Amount}_{{year}\mspace{14mu} n}} = {\begin{pmatrix}\begin{pmatrix}{{{Deferral}\mspace{14mu} {Rate}_{{{{year}\mspace{14mu} n} - 1}\;}} +} \\{Increase}\end{pmatrix} \\\left( {{Deferral}\mspace{14mu} {Salary}_{{year}\mspace{14mu} n}} \right)\end{pmatrix} +}} \\\left( {\left( {{{Employer}\mspace{14mu} {Contribution}\mspace{14mu} {Rate}_{{{year}\mspace{14mu} n} - 1}} + {Increase}} \right)\left( {{Deferral}\mspace{14mu} {Salary}_{{year}\mspace{14mu} n}} \right)} \right)\end{matrix}\end{matrix}\quad$

As shown in the above Table 11, simulation engine 116 determinescontribution amounts to the retirement plan (that is being designed) forthe year in which the participant begins participating in the retirementaccount until retirement. The contribution amounts are based on thedeferral rate (as specified by control 222), the employer contributionamount (as specified by control 224) and the annual increase (in one ormore of the deferral amounts and the employer contribution amounts) (asspecified by control 226). Using the contribution amounts, simulationengine 116 predicts balances of the retirement plan that is beingdesigned, as shown in the below Table 12:

TABLE 12 $\begin{matrix}\begin{matrix}\begin{matrix}\begin{matrix}\begin{matrix}\begin{matrix}\begin{matrix}{{{Retirement}\mspace{14mu} {Plan}\mspace{14mu} {Balance}_{{year}\mspace{14mu} 30}} =} \\{{Predicted}\mspace{14mu} {{performance}\left( {{Contributions}\mspace{14mu} {Amount}_{{year}\mspace{14mu} 30}} \right)}}\end{matrix} \\\ldots\end{matrix} \\{{{Retirement}\mspace{14mu} {Plan}\mspace{14mu} {Balance}_{{year}\mspace{14mu} n}} =}\end{matrix} \\{{Predicted}\mspace{14mu} {{performance}\left( {{{Retirement}\mspace{14mu} {Plan}\mspace{14mu} {Balance}_{{{year}\mspace{14mu} n} - 1}} +} \right.}}\end{matrix} \\\left. {{Contributions}\mspace{14mu} {Amount}_{{year}\mspace{14mu} n}} \right)\end{matrix} \\\ldots\end{matrix} \\\begin{matrix}{{{Retirement}\mspace{14mu} {Plan}\mspace{14mu} {Balance}_{{year}\mspace{14mu} 67}} =} \\\begin{matrix}{{Predicted}\mspace{14mu} {{performance}\left( {{{Retirement}\mspace{14mu} {Plan}\mspace{14mu} {Balance}_{{year}\mspace{14mu} 66}} +} \right.}} \\\left. {{Contributions}\mspace{14mu} {Amount}_{{year}\mspace{14mu} 67}} \right)\end{matrix}\end{matrix}\end{matrix}\quad$

As shown in the above Table 12, simulation engine 112 predicts thebalance of the retirement plan being designed based on the amount offunds being contributed to the retirement plan for the particular year,based on the balance of the retirement plan in the prior year (i.e., theclosing balance) and the expected performance of the plan. Theperformance amount is based on the allocation of funds in the accountand based on execution of the historical performance analysis andsimulations previously described. Simulation engine 116 generatespredictions of balances of the candidate retirement plan from the yearin which the participant joins the plan until the age of retirement.Using the predicted balance of the retirement plan at the age ofretirement, simulation engine 116 determines the constant periodicwithdrawal amount, in accordance with the formula shown in the belowTable 13:

TABLE 13 Constant Periodic Withdrawal Amount = Retirement Plan Balanceyear 67/(Age at death − retirement Age + 1)

As shown in the above Table 13, the constant periodic withdrawal amountis the balance of the retirement plan at the retirement age (i.e., age67) divided by the numbers of years from retirement until death. Usingthe constant periodic withdrawal amount, simulation engine 116determines the income replacement rate, in accordance with the formulashown in the below Table 14:

TABLE 14 Income replacement rate = (Constant Periodic WithdrawalAmount + Social Security Amount + IRA distributions)/Salary_(year 67)

As shown in Table 14 above, simulation engine 116 determines the incomereplacement rate of a candidate retirement plan using a ratio of theaggregate sum of retirement income resources to the salary at the age ofretirement. There are various retirement income resources, including,e.g., constant periodic withdrawal amount, social security, HSAdistributions, defined benefits, non-qualified benefit resources and IRAdistributions. Simulation engine 116 determines IRA distributions fromaccessing in data repository 108 (or an external data source)information specifying an annual amount of IRA distributions that areallowed post-retirement.

Still referring to FIG. 4, simulation engine 116 uses values selectedfor controls 222, 224, 226 to determine the income replacement rate forthe first design retirement plan represented by portion 201. Simulationengine 116 generates visual representation 216 to display an amount ofthe income replacement rate (i.e., 59%). Simulation engine 116 alsodetermines how much various sources contribute to the income replacementrate. The types of sources that contribute to the income replacement isshown in portion 207 of graphical user interface 200. There are varioustypes of sources, including, an IRA, a HSA account, a defined benefit, adefined contribution and social security. A defined benefit retirementplan is a type of retirement plan in which an employer/sponsor promisesa specified monthly benefit on retirement that is predetermined by aformula based on the employee's earnings history, tenure of service andage, rather than depending directly on individual investment returns.Visual representation 216 includes portion 218, 220, to specify theamounts of the income replacement rate that are attributable to adefined contribution and social security, respectively.

Graphical user interface 200 also includes a representation 215 tospecify a threshold income replacement rate (i.e., of 85%). Simulationengine 116 determines whether the plan design of the first candidateretirement plan represented in portion 201 has an income replacementrate that satisfies the threshold income replacement rate. The incomereplacement rate of the first candidate plan is less than the thresholdincome replacement rate. Simulation engine 116 generates savings gapinformation 228 to specify an amount by which the income replacementrate of the first candidate plan is less than the threshold incomereplacement rate.

Graphical user interface 200 also includes visual representations 230,244 of income replacement rates of second and third candidate retirementplans, respectively. Visual representation 230 includes portions 230,234 to specify which sources contribute to the income replacement rateof the second candidate plan. Visual representation 244 includesportions 246, 248 to specify which sources contribute to the incomereplacement rate of the third candidate plan. The second candidate planalso has an income replacement rate that is less than the thresholdincome replacement rate. Simulation engine 116 generates savings gapinformation 242 to specify the amount by which the income replacementrate for the second candidate retirement plan is less than the thresholdincome replacement rate.

Referring to FIG. 5, simulation engine 116 implements process 260 todetermine an income replacement rate. Simulation engine 116 executes(262) executing a plurality of simulations on a retirement account in aretirement plan to produce a plurality of potential retirement accountbalances at a retirement age and associated confidence levels specifyinga predicted level of accuracy of corresponding account balances.Simulation engine 116 selects (264) selecting, from the range, aparticular potential account balance that has a confidence level thatexceeds a confidence level threshold. Simulation engine 116 calculates(266), based on life expectancy of a participant in the retirement plan,a constant withdrawal amount of funds from the retirement accountstarting in a year after retirement such that the retirement account isdepleted when the participant reaches the expected life expectancy.Simulation engine 116 retrieves (268), from a data repository,information indicative of amount of retirement income from variousincome sources, including, e.g., social security, HSA distributions, IRAdistributions, and so forth. Simulation engine 116 determines an annualretirement income by summing the constant withdrawal amount and theamount of retirement income from the other sources (e.g., the annualamount of social security payments). Simulation engine 116 determines(272); based on the annual retirement income and an after-tax income ina year before retirement of the participant, an income replacement ratefor a participant, with the income replacement rate being a measure ofan amount of after-tax income that a participant received annuallyduring retirement divided by the after-tax income in a year beforeretirement of the participant.

Referring to FIG. 6, simulation engine 116 implements process 280 forthe designing of a potential plan by receiving (282), from a user,information indicative of a selection of parameter values for variousretirement plan candidates. Parameter values includes values specifyingdeferral rate, employer contribution, starting salary, retirement age,and so forth. Simulation engine 116 determines (284) income replacementrates for the various candidate plans. Simulation engine 116 alsogenerates (286) visualizations that represent a comparison of the incomereplacement rates for the candidate plans to a threshold incomereplacement rates. Based on the comparison, a user updates one or moreof the parameter values and/or selects a particular one of the candidateplans as a retirement plan that is offered to participants.

Embodiments can be implemented in digital electronic circuitry, or incomputer hardware, firmware, software, or in combinations thereof.Apparatus of the invention can be implemented in a computer programproduct tangibly embodied or stored in a machine-readable storage devicefor execution by a programmable processor; and method actions can beperformed by a programmable processor executing a program ofinstructions to perform functions of the invention by operating on inputdata and generating output. The invention can be implementedadvantageously in one or more computer programs that are executable on aprogrammable system including at least one programmable processorcoupled to receive data and instructions from, and to transmit data andinstructions to, a data storage system, at least one input device, andat least one output device. Each computer program can be implemented ina high-level procedural or object oriented programming language, or inassembly or machine language if desired; and in any case, the languagecan be a compiled or interpreted language.

Suitable processors include, by way of example, both general and specialpurpose microprocessors. Generally, a processor will receiveinstructions and data from a read-only memory and/or a random accessmemory. Generally, a computer will include one or more mass storagedevices for storing data files; such devices include magnetic disks,such as internal hard disks and removable disks; magneto-optical disks;and optical disks. Storage devices suitable for tangibly embodyingcomputer program instructions and data include all forms of non-volatilememory, including by way of example semiconductor memory devices, suchas EPROM, EEPROM, and flash memory devices; magnetic disks such asinternal hard disks and removable disks; magneto-optical disks; andCD_ROM disks. Any of the foregoing can be supplemented by, orincorporated in, ASICs (application-specific integrated circuits).

Other embodiments are within the scope and spirit of the descriptionclaims. For example, due to the nature of software, functions describedabove can be implemented using software, hardware, firmware, hardwiring,or combinations of any of these. Features implementing functions mayalso be physically located at various positions, including beingdistributed such that portions of functions are implemented at differentphysical locations.

What is claimed is:
 1. A computer-implemented method comprising:executing a plurality of simulations on a retirement account in aretirement plan to produce a plurality of potential retirement accountbalances at a retirement age and associated confidence levels specifyinga predicted level of accuracy of corresponding account balances;selecting, from the range, a particular potential account balance thathas a confidence level that exceeds a confidence level threshold; andcalculating, by one or more processing devices, a constant periodicwithdrawal amount of funds from the retirement account.
 2. Thecomputer-implemented of claim 1, wherein the constant periodicwithdrawal amount is a constant withdrawal amount from the retirementplan starting in a year after retirement such that the retirementaccount is depleted when the participant reaches an expected lifeexpectancy.
 3. The computer-implemented method of claim 1, furthercomprising: receiving information indicative of an amount of socialsecurity payments the participant is expected to receive annually afterretirement; computing an annual retirement income by summing theconstant withdrawal amount and the annual amount of social securitypayments; and computing, based on the annual retirement income and anafter-tax income in a year before retirement of the participant, anincome replacement rate for a participant, with the income replacementrate being a measure of an amount of after-tax income that a participantreceived annually during retirement divided by the after-tax income in ayear before retirement of the participant.
 4. The computer-implementedmethod of claim 1, further comprising: determining, by the one or moreprocessing devices, an amount of the income replacement rate that isattributable to a defined contribution, with the defined contributionbeing based on a ratio of the constant withdrawal amount and theafter-tax income in the year before retirement of the participant; anddetermining, by the one or more processing devices, an amount of theincome replacement rate that is attributable to the annual amount ofsocial security payment.
 5. The computer-implemented method of claim 4,further comprising: aggregating, for participants in a retirement plan,income replacement rates for the participants; and generating avisualization of average income replacement rates for the participants,with a portion of the visualization specifying an amount of the averageincome replacement rate that is attributable to defined contributions ofthe participants in the plan, and with another portion of thevisualization specifying an amount of the average income replacementrate that is attributable to social security payments of theparticipants in the plan.
 6. The computer-implemented method of claim 4,further comprising: aggregating, for participants in a retirement plan,income replacement rates for the participants; and generatingvisualizations of average income replacement rates for different valuesof a particular participant attribute, with the particular participantattribute comprising one or more of participants' elective deferralrate, participants' tenure at an employer, participants' annual income,participants' account balance at a predefined time, and participants'age of starting to contribute to retirement plans, with thevisualizations each comprising a defined contribution componentspecifying an amount of the average income replacement rate that isattributable to defined contributions of the participants in the plan,and a social security component specifying an amount of the averageincome replacement rate that is attributable to social security paymentsof the participants in the plan; and a gender of the participant.
 7. Themethod of claim 1, wherein the simulations are Monte Carlo simulations.8. The method of claim 1, further comprising: accessing informationindicative of an expected retirement age of the participant in theretirement plan, information indicative of an annual income of theparticipant, information indicative of an amount of the employercontribution to the retirement account of the participant, informationindicative of a contribution of the participant to the retirementaccount of the participant, and information indicative of lifeexpectancy of the participant; and accessing information indicative ofdifferent market conditions for types of assets in the retirementaccount.
 9. The method of claim 1, further comprising: accessinginformation indicative of historical performance of types of assets inthe retirement account; generating, from the information indicative ofthe historical performance, different market conditions, with a firstone of the different market conditions being that the market performslower than historical averages for a particular type of asset, and witha second one of the different market conditions being that the marketholds at a historical average for the particular type of asset in theretirement account.
 10. The method of claim 1, further comprising:determining asset allocations for types of assets in the retirementaccount, with the different market conditions being market conditionsfor the types of assets included in the retirement account and with thesimulations being weighted in accordance with the asset allocations ofthe retirement account.
 11. The method of claim 1, further comprising:applying a plurality of simulations to information indicative of thedifferent market conditions for types of assets in a retirement accountof a participant, information indicative of an expected retirement ageof the participant, information indicative of an annual income of theparticipant, information indicative of the amount of an employercontribution to the retirement account, and the information indicativeof a contribution of the participant to the retirement account.
 12. Acomputer-implemented method for designing an investment plan, the methodcomprises: receiving a request to generate an estimate of a hypotheticalincome replacement rate for a hypothetical participant in a hypotheticalretirement plan, with the request including a selected starting age, aselected retirement age, a selected starting salary, a selected startingdeferral rate, a selected employer contribution rate, and a selectedannual deferral increase in the starting deferral rate; applying aplurality of simulations to information indicative of the differentmarket conditions for types of assets in hypothetical retirement plan,information indicative of the selected retirement age of theparticipant, information indicative of the selected starting salary,information indicative of the selected starting deferral rate, andinformation indicative of the selected employer contribution rate; andgenerating, based on applying, a range of potential account balances forthe hypothetical retirement account when the hypothetical participantreaches the selected retirement age, with each of the potential accountbalances in the range being associated with a confidence levelspecifying a predicted level of accuracy of the potential accountbalance; selecting, from the range, a particular potential accountbalance with a confidence level that exceeds a confidence levelthreshold; calculating, by one or more processing devices and based onan expected life expectancy of the hypothetical participant, a constantwithdrawal amount that specifies a constant amount of funds thehypothetical participant can withdraw from the hypothetical retirementaccount each year after retirement such that the hypothetical retirementaccount is depleted when the participant reaches the expected lifeexpectancy; receiving information indicative of an amount of socialsecurity payments the hypothetical participant is expected to receiveannually after retirement; computing an annual retirement income bysumming the constant withdrawal amount and the annual amount of socialsecurity payments; and computing, based on the annual retirement incomeand an after-tax income in a year before retirement of the hypotheticalparticipant, an hypothetical income replacement rate for a participant,with the hypothetical income replacement rate being a measure of on anamount of after-tax income that a participant received annually duringretirement divided by the after-tax income in a year before retirementof the hypothetical participant.
 13. The computer-implemented method ofclaim 12, wherein the hypothetical income replacement rate is a firsthypothetical income replacement rate, and wherein the method furthercomprises: computing a second hypothetical income replacement rate basedon another selected starting deferral rate, another selected employercontribution rate, and another selected annual increase; and generatinga comparison of the first hypothetical income replacement to the secondhypothetical income replacement.
 14. A computer-implemented method fordesigning an investment plan, the method comprising: generating asimulation of a first income replacement rate for a participant in theinvestment plan, with the simulated first income replacement rate beingbased on a first user-specified deferral rate and a first user-specifiedemployer contribution rate; generating a simulation of a second incomereplacement rate for the participant in the investment plan, with thesecond income replacement rate being based on a second user-specifieddeferral rate and a second user-specified employer contribution rate;determining that at least one of the first income replacement rate andthe second income replacement rate is an unacceptable income replacementrate; and updating, based on determining, one or more attributes of theplan for the participant, with an attribute comprising one or more of adeferral rate and an employer contribution rate.
 15. An electronicsystem comprising: one or more processing devices; and one or moremachine-readable hardware storage devices storing instructions that areexecutable by the one or more processing devices to perform operationscomprising: executing a plurality of simulations on a retirement accountin a retirement plan to produce a plurality of potential retirementaccount balances at a retirement age and associated confidence levelsspecifying a predicted level of accuracy of corresponding accountbalances; selecting, from the range, a particular potential accountbalance that has a confidence level that exceeds a confidence levelthreshold; and calculating a constant periodic withdrawal amount offunds from the retirement account.
 16. The electronic system of claim15, wherein the constant periodic withdrawal amount is a constantwithdrawal amount from the retirement plan starting in a year afterretirement such that the retirement account is depleted when theparticipant reaches an expected life expectancy.
 17. The electronicsystem of claim 15, wherein the operations further comprise: receivinginformation indicative of an amount of social security payments theparticipant is expected to receive annually after retirement; computingan annual retirement income by summing the constant withdrawal amountand the annual amount of social security payments; and computing, basedon the annual retirement income and an after-tax income in a year beforeretirement of the participant, an income replacement rate for aparticipant, with the income replacement rate being a measure of anamount of after-tax income that a participant received annually duringretirement divided by the after-tax income in a year before retirementof the participant.
 18. The electronic system of claim 15, wherein theoperations further comprise: determining, by the one or more processingdevices, an amount of the income replacement rate that is attributableto a defined contribution, with the defined contribution being based ona ratio of the constant withdrawal amount and the after-tax income inthe year before retirement of the participant; and determining, by theone or more processing devices, an amount of the income replacement ratethat is attributable to the annual amount of social security payment.19. The electronic system of claim 18, wherein the operations furthercomprise: aggregating, for participants in a retirement plan, incomereplacement rates for the participants; and generating a visualizationof average income replacement rates for the participants, with a portionof the visualization specifying an amount of the average incomereplacement rate that is attributable to defined contributions of theparticipants in the plan, and with another portion of the visualizationspecifying an amount of the average income replacement rate that isattributable to social security payments of the participants in theplan.
 20. The electronic system of claim 18, wherein the operationsfurther comprise: aggregating, for participants in a retirement plan,income replacement rates for the participants; and generatingvisualizations of average income replacement rates for different valuesof a particular participant attribute, with the particular participantattribute comprising one or more of participants' elective deferralrate, participants' tenure at an employer, participants' annual income,participants' account balance at a predefined time, and participants'age of starting to contribute to retirement plans, with thevisualizations each comprising a defined contribution componentspecifying an amount of the average income replacement rate that isattributable to defined contributions of the participants in the plan,and a social security component specifying an amount of the averageincome replacement rate that is attributable to social security paymentsof the participants in the plan; and a gender of the participant. 21.The electronic system of claim 15, wherein the simulations are MonteCarlo simulations.
 22. The electronic system of claim 15, wherein theoperations further comprise: accessing information indicative of anexpected retirement age of the participant in the retirement plan,information indicative of an annual income of the participant,information indicative of an amount of the employer contribution to theretirement account of the participant, information indicative of acontribution of the participant to the retirement account of theparticipant, and information indicative of life expectancy of theparticipant; and accessing information indicative of different marketconditions for types of assets in the retirement account.
 23. Theelectronic system of claim 15, wherein the operations further comprise:accessing information indicative of historical performance of types ofassets in the retirement account; generating, from the informationindicative of the historical performance, different market conditions,with a first one of the different market conditions being that themarket performs lower than historical averages for a particular type ofasset, and with a second one of the different market conditions beingthat the market holds at a historical average for the particular type ofasset in the retirement account.
 24. The electronic system of claim 15,wherein the operations further comprise: determining asset allocationsfor types of assets in the retirement account, with the different marketconditions being market conditions for the types of assets included inthe retirement account and with the simulations being weighted inaccordance with the asset allocations of the retirement account.
 25. Theelectronic system of claim 15, wherein the operations further comprise:applying a plurality of simulations to information indicative of thedifferent market conditions for types of assets in a retirement accountof a participant, information indicative of an expected retirement ageof the participant, information indicative of an annual income of theparticipant, information indicative of the amount of an employercontribution to the retirement account, and the information indicativeof a contribution of the participant to the retirement account.